Things to do
This page lists all suggested enhancements at the time of release.
The online to-do list
lists additional suggestions, received after the release. Please check
both this page and the online page before sending me any suggestions.
Future releases
AWeb is still being developed. Future releases of AWeb will support:
- HTML-3 commands like tables and background images
- Netscape-HTML extensions like background and text colour
- Hierarchical hotlist
- Client pull
- Server push
- Localization
- Full ARexx command set, and a user configurable menu to start ARexx
macros from within AWeb.
- Persistent document and image cache on disk.
Far future
In the far future, AWeb may support:
- Save page and images as PostScript
- Separate user-maintained disk cache to store documents and images
so you can view them later off-line.
- Java
- Style sheets
- User configureable keyboard
- Select text and copy to clipboard
Other enhancements
These enhancements were suggested to me. I don't know when I'll include
these things in AWeb, if at all, but probably many of them will be in
the next major release.
Enhancements in functionality
Network
- Support FTP internally.
- Add exclusion list for proxy's with domains not to use the proxy for.
- Option: bypass proxy for forms with method=post and authenticated pages.
- Retry connection past a proxy if connection to proxy fails.
- Option: cancel all pending inline image loads for a document when
following a link.
- "Pause network activity" button.
- Support telnet: with external program.
- Support "follow link without fetching the image" for image maps.
The next generation of imagemap programs should accept that as a
request for a text-only version of the page.
Browsing
- Implement global history.
Also: possibility to choose an URL from the global history.
- Global window history, editing, rearrange, copy to hotlist.
- Configurable 'direct buttons'.
- Document headers feature. Either: 1) append <hr> and <dl> with headers
to every document; 2) open window on user request with headers in it;
3) create button that links to x-aweb doc that has them, and maybe other
interesting things as well.
- Let ctrl-click load the page in a new window.
- Use external viewer with pipe
- Option: View inline image with external viewer
- Back function should go back to previous position if last anchor followed
was A NAME= within same document.
- Option: doesn't load homepage on startup.
- Direct support for .z and .gz files: uncompress before processing or
starting external viewer.
- Different font settings for <address>, <blockquote> and
<cite>
- Save HTML mode (strict/compatible).
- Let dragging with the mouse scroll the page.
- Option: render images vertically compressed on 1:2 pixel screens (like 640x200).
Program
- Do 'Save as formatted text'
- Include the Print function
- Include the Find in current function
- View HTML using textview.gadget (editable?)
- Iconify option (transfers continue while iconified).
- Load settings, Save settings as...
- Check if saved/downloaded file fits on disk
- Screen preferences: alternative screen name if first one doesn't exist.
- Screen preferences: wildcards in screen name like DOPUS.*
- Ask save filename before download, instead of saving to temp file first.
- Support for HAM Workbench
- Support environment variables EDITOR and HTTP_PROXY etc.
ARexx
- Configurable user menu with ARexx commands.
- ARexx DOWNLOAD command with option to return document in RESULT
- ARexx command to get all URLs in a document
Miscellaneous
- Character entities should stop if unambiguous name is found
(e.g. ën should recognize the 'ë')
Only in compatible HTML mode.
- Use ENCTYPE for forms sent to x-aweb:command, allowing running cgi
applications.
Cosmetic enhancements
GUI
- Make gadget font configurable.
- Preference: buttons left or right, 1 or 2 button rows
- Block 2nd 'open local' requester from same window if one is still open.
Same for 'save as' (any more?)
- Add up/down arrows to URL gadget to scroll trough window history.
- Text in navigation buttons with single hotkey
- Enhanced graphics in navigation buttons
Browsing
- No redisplay if loaded image is completely above the visible window.
- Add extra pixel row between lines on hi res screens
- Display <li><p>item</p> without LF between bullet and text
- Option: display paragraphs indented without blank line
- Form field: <select size=2> en #options=2: make listview size 2 instead
of oversized listview
- Put text 'loading images' in progress gadget while loading images for
displayed document.
- Instead of refreshing after each 'image processing ready' message received,
collect all messages from the port and do one refresh.
Done this in 0.10, but doesn't give the desired results. Instead, after
receiving an 'image ready' message, it should wait a while (user configureable)
for more images to be completed before refreshing the window.
- Option: new/visited links underline type (_____ or _ _ _).
Or a user selectable image for underlining.
- Flag: proxy status on/off in window titlebar.
- Special colour for links to pages in cache.
- Enhanced list item bullets (3d)
- Replace some parts of the URL in the status gadget (the link pointed to)
by "..." if it doesn't fit.
Program
- Revert to previous screen mode if selected screen mode doesn't open, instead
of falling back to Workbench.
- Save positions for 2nd and later windows.
- Take display clip into account when opening full-sized window.
- If settings changed but not saved, show warning requester before quit.
- If named screen does not exist, show error requester (and open on default
public screen).
- On a snapshot, remember if the network window was open and re-open it
after a restart.
- Save the zoomed window dimensions too.
- Preload grayscale palette for 16 or less colours.
- Screen preferences: requesters with present public screens to choose from.
- Open information window if external editor starts.
- Window with cache or memory indicator.
- Move and resize windows directly if dimensions in settings window
have been changed.
Miscellaneous
- Don't refresh border of listview and textarea form fields with every character typed
- Do proper URL encoding; decode on file://localhost
- Proxy prefs: separate string gadget for port number.